/* wodw.t  WORK ORDER BILL WRITE TRIGGER                              */
/*Copyright 1986-2002 QAD Inc., Carpinteria, CA, USA.                 */
/*All rights reserved worldwide.  This is an unpublished work.        */
/*V8:ConvertMode=NoConvert*/
/*********************************************************************/
/*  Program :wodw.t                                                  */
/*  Author  :Ben Holmes                                              */
/*  Date    :03/09/95                                                */
/*  !Description : wod_det WRITE trigger program                     */
/*          : In order to enhance this trigger to support additional */
/*          : interfaces, add a DO-END block similar to the one      */
/*          : used for the Warehousing Interface to (1) check for the*/
/*          : need to continue processing; (2) move the relevant     */
/*          : fields to an appropriate work area; and (3) call       */
/*          : one or more subprograms to continue processing.        */
/*          : This .t program should remain short, relying on        */
/*          : subprograms to perform most of the work.               */
/*********************************************************************/
/*                             MODIFY LOG                            */
/*********************************************************************/
/*Revision 8.5          Last Modified:  12/04/95 BY: BHolmes *J0FY*  */
/*Revision 8.5          Last Modified:  03/10/96 BY: fwy     *J0HP*  */
/*Revision 8.5          Last Modified:  07/27/96 BY: fwy     *J12B*  */
/*Revision 8.5          Last Modified:  01/07/97 BY: jpm     *J1DM*  */
/*Revision 9.1          Last Modified:  08/12/00 BY: *N0KC* myb       */
/*                                                                   */
/*                                                                   */
/*********************************************************************/

TRIGGER PROCEDURE FOR WRITE OF WOD_DET OLD BUFFER OLD_WOD_DET.

/*J12B  if not can-find(first whl_mstr where whl_mstr.whl_act no-lock) */
/*J12B  then leave. */

{mfdeclre.i }
define new shared work-table wf_old_wod_det like wod_det.
define new shared variable w-recid as recid.
define new shared variable w-site-loc-id like whl_mstr.whl_src_dest_id.
define variable w-file as character format "x(24)".


/* Warehousing Interface processing */

WI:
do:

/* If there is no active external warehouse that is flagged to
receive work order export transactions, then do not process */
    if not can-find(first whl_mstr no-lock where whl_mstr.whl_act and whl_mstr.whl_wo_exp) then leave WI.

/* If no pertinent fields have been changed, then do not process */
    if (old_wod_det.wod_nbr      = wod_det.wod_nbr
        and old_wod_det.wod_lot      = wod_det.wod_lot
        and old_wod_det.wod_part     = wod_det.wod_part
        and old_wod_det.wod_op       = wod_det.wod_op
        and old_wod_det.wod_qty_req  = wod_det.wod_qty_req
        and old_wod_det.wod_site     = wod_det.wod_site
        and old_wod_det.wod_loc      = wod_det.wod_loc
        and old_wod_det.wod_serial   = wod_det.wod_serial
        and old_wod_det.wod_iss_date = wod_det.wod_iss_date
        and old_wod_det.wod_deliver  = wod_det.wod_deliver
        and old_wod_det.wod_user1    = wod_det.wod_user1
        and old_wod_det.wod_user2    = wod_det.wod_user2
        and old_wod_det.wod_cmtindx  = wod_det.wod_cmtindx)
        then leave WI.

/* Move old wod_det values to work table for subsequent processing */
    assign w-recid = recid(wod_det).
    create wf_old_wod_det.
    if recid(wf_old_wod_det)= -1 then .
    assign
        wf_old_wod_det.wod_nbr       = old_wod_det.wod_nbr
        wf_old_wod_det.wod_lot       = old_wod_det.wod_lot
        wf_old_wod_det.wod_part      = old_wod_det.wod_part
        wf_old_wod_det.wod_op        = old_wod_det.wod_op
        wf_old_wod_det.wod_qty_req   = old_wod_det.wod_qty_req
        wf_old_wod_det.wod_site      = old_wod_det.wod_site
        wf_old_wod_det.wod_loc       = old_wod_det.wod_loc
        wf_old_wod_det.wod_serial    = old_wod_det.wod_serial
        wf_old_wod_det.wod_iss_date  = old_wod_det.wod_iss_date
        wf_old_wod_det.wod_deliver   = old_wod_det.wod_deliver
        wf_old_wod_det.wod_user1     = old_wod_det.wod_user1
        wf_old_wod_det.wod_user2     = old_wod_det.wod_user2
        wf_old_wod_det.wod_cmtindx   = old_wod_det.wod_cmtindx
       .


/* If the required quantity is being changed from - to +,
then create a delete transaction first */
    if wf_old_wod_det.wod_qty_req lt 0 and     wod_det.wod_qty_req ge 0 then do:
        w-file = "wiwodd.p".
        {gprunmo.i &module="WI" &program="wiwodd.p"}
    end.

/* If the bill being added/changed has a negative quantity required,
then create an add/change transaction */
    if wod_det.wod_qty_req lt 0 then do:
        w-file = "wiwodw2.p".
        {gprunmo.i &module="WI" &program="wiwodw2.p"}
        leave WI.
    end.

/* If the bill being added/changed has a positive quantity required,
then create an add/change transaction if there is a picked quantity */
    if wod_det.wod_qty_req ge 0 then do:
        w-file = "wiwodw.p".
        {gprunmo.i &module="WI" &program="wiwodw.p"}
    end.

end. /* WI */

/* fdn 2004/10/28 Modify Record processing */
HK:
do:
    if can-find(first dt_mstr where dt_table = "wod_det" and dt_type = "SYNC") then
        run CreateSyncFlag(input "MOD", input recid(wod_det), input "wod_det").

    if not can-find ( first dt_mstr where dt_table = "wod_det" and dt_type = "MOD" ) then leave HK.
    
    if not can-find ( first wf_old_wod_det ) then do:
        create wf_old_wod_det.
        if recid(wf_old_wod_det)= -1 then .
    end.
    
    buffer-copy old_wod_det to wf_old_wod_det no-error.
    
    for first wf_old_wod_det no-lock :
    end.
    
    if not available wf_old_wod_det then leave HK.

    for each dt_mstr no-lock where dt_table = "wod_det" and dt_type = "MOD" :

        case dt_field :

            when "wod_nbr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_nbr, input wod_det.wod_nbr,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_lot" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_lot, input wod_det.wod_lot,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_iss_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_iss_date), input string(wod_det.wod_iss_date),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_part" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_part, input wod_det.wod_part,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_req" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_req), input string(wod_det.wod_qty_req),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_all" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_all), input string(wod_det.wod_qty_all),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_pick" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_pick), input string(wod_det.wod_qty_pick),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_iss" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_iss), input string(wod_det.wod_qty_iss),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_tot_std" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_tot_std), input string(wod_det.wod_tot_std),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_deliver" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_deliver, input wod_det.wod_deliver,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_chg" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_chg), input string(wod_det.wod_qty_chg),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_bo_chg" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_bo_chg), input string(wod_det.wod_bo_chg),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_loc" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_loc, input wod_det.wod_loc,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_serial" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_serial, input wod_det.wod_serial,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_cmtindx" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_cmtindx), input string(wod_det.wod_cmtindx),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_user1" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_user1, input wod_det.wod_user1,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_user2" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_user2, input wod_det.wod_user2,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_op" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_op), input string(wod_det.wod_op),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_critical" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_critical), input string(wod_det.wod_critical),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_site" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_site, input wod_det.wod_site,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__chr01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__chr01, input wod_det.wod__chr01,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__chr02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__chr02, input wod_det.wod__chr02,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__chr03" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__chr03, input wod_det.wod__chr03,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__chr04" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__chr04, input wod_det.wod__chr04,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__chr05" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__chr05, input wod_det.wod__chr05,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__dte01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__dte01), input string(wod_det.wod__dte01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__dte02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__dte02), input string(wod_det.wod__dte02),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__dec01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__dec01), input string(wod_det.wod__dec01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__dec02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__dec02), input string(wod_det.wod__dec02),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__log01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__log01), input string(wod_det.wod__log01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_bom_qty" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_bom_qty), input string(wod_det.wod_bom_qty),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mtl_totx" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mtl_totx), input string(wod_det.wod_mtl_totx),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvuse_post" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvuse_post), input string(wod_det.wod_mvuse_post),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_bom_amt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_bom_amt), input string(wod_det.wod_bom_amt),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvrte_post" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvrte_post), input string(wod_det.wod_mvrte_post),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvrte_rval" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvrte_rval), input string(wod_det.wod_mvrte_rval),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvuse_rval" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvuse_rval), input string(wod_det.wod_mvuse_rval),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvrte_accr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvrte_accr), input string(wod_det.wod_mvrte_accr),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_mvuse_accr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_mvuse_accr), input string(wod_det.wod_mvuse_accr),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ca_int_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ca_int_type, input wod_det.wod_ca_int_type,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_covered_amt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_covered_amt), input string(wod_det.wod_covered_amt),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_eng_code" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_eng_code, input wod_det.wod_eng_code,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fcg_code" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_fcg_code, input wod_det.wod_fcg_code,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fcg_index" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_fcg_index), input string(wod_det.wod_fcg_index),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fis_column" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_fis_column), input string(wod_det.wod_fis_column),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fis_sort" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_fis_sort, input wod_det.wod_fis_sort,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fsc_code" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_fsc_code, input wod_det.wod_fsc_code,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_fsm_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_fsm_type, input wod_det.wod_fsm_type,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_list_pr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_list_pr), input string(wod_det.wod_list_pr),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_price" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_price), input string(wod_det.wod_price),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_prod_line" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_prod_line, input wod_det.wod_prod_line,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_posted" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_posted), input string(wod_det.wod_qty_posted),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_qty_ret" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_qty_ret), input string(wod_det.wod_qty_ret),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_status" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_status, input wod_det.wod_status,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_line_price" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_line_price), input string(wod_det.wod_line_price),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_covered_post" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_covered_post), input string(wod_det.wod_covered_post),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_sv_code" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_sv_code, input wod_det.wod_sv_code,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_project" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_project, input wod_det.wod_project,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ret_iss" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_ret_iss), input string(wod_det.wod_ret_iss),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_exg_price" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_exg_price), input string(wod_det.wod_exg_price),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ret_site" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ret_site, input wod_det.wod_ret_site,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ret_loc" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ret_loc, input wod_det.wod_ret_loc,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_std_cost" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_std_cost), input string(wod_det.wod_std_cost),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_itm_line" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_itm_line), input string(wod_det.wod_itm_line),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_sod_line" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_sod_line), input string(wod_det.wod_sod_line),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_sod_nbr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_sod_nbr, input wod_det.wod_sod_nbr,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_seo_load" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_seo_load), input string(wod_det.wod_seo_load),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_from_loc" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_from_loc, input wod_det.wod_from_loc,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_from_site" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_from_site, input wod_det.wod_from_site,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ref" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ref, input wod_det.wod_ref,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ret_serial" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ret_serial, input wod_det.wod_ret_serial,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadc01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__qadc01, input wod_det.wod__qadc01,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadc02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__qadc02, input wod_det.wod__qadc02,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadc03" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod__qadc03, input wod_det.wod__qadc03,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadt01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qadt01), input string(wod_det.wod__qadt01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadt02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qadt02), input string(wod_det.wod__qadt02),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qade01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qade01), input string(wod_det.wod__qade01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qade02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qade02), input string(wod_det.wod__qade02),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadl01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qadl01), input string(wod_det.wod__qadl01),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod__qadl02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod__qadl02), input string(wod_det.wod__qadl02),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_isb_ref" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_isb_ref), input string(wod_det.wod_isb_ref),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_ret_ref" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_wod_det.wod_ret_ref, input wod_det.wod_ret_ref,
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

            when "wod_yield_pct" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_wod_det.wod_yield_pct), input string(wod_det.wod_yield_pct),
                    input recid(wod_det), input wod_det.wod_nbr, input wod_det.wod_part, input string(wod_det.wod_op), input wod_det.wod_lot,
                    input "", input "", input "", input "").

        end.

    end.
end.

{hkdttrans.i}
